package pe.com.bbva.configuracion.bo;

import java.util.List;

import pe.com.bbva.configuracion.domain.Configuracion;
import pe.com.stefanini.core.bo.Grid;
import pe.com.stefanini.core.exceptions.BOException;
import pe.com.stefanini.core.exceptions.DAOException;

public interface ConfiguracionBO {
	public Configuracion findByIdConfiguracion(Long codigoConfiguracion)throws BOException;
	public List<Configuracion> findConfiguracion()throws BOException ;
	public Grid<Configuracion> findToGrid(Configuracion configuracion, String order, int page, int rows, int records)throws BOException, DAOException;
	public void save(Configuracion configuracion ,String codigoAntiguo) throws BOException, DAOException;
	@SuppressWarnings("rawtypes")
	public void deleteLog(Class parametro, Long id)throws BOException;
	public Configuracion findById(Long id) throws BOException;
	public List<Configuracion> findConfiguracionDetalle(Long tipArchCarga)throws BOException;
	public List<Configuracion> findConfiguracionByTipoArchivo(String codTipoArchivo )throws BOException;
	public Configuracion findConfiguracionCargaByCodigoArchivoCarga(String codTipoCargaArchivo)throws BOException, DAOException;
	public Configuracion findConfiguracionCargaByIdArchivoCarga(String idTipoCargaArchivo)throws BOException, DAOException;
	public void enviarEmailError(String incidencia,String strcuerpoError, List<String> equipos) throws Exception;
	public void enviarEmailConsolidado(String turno, List<String> equipos) throws Exception;
	public void enviarEmailTarjeta(String numTarjeta, String estadoInicial, String estadoFinal, String usuario) throws Exception;
	public void enviarEmail(String idTurno, List<String> equipos, String nombreArchivo) throws Exception;
	public void enviarEmailDiferencias(String idTurno, List<String> equipos, String nombreArchivo, Long idCorreo) throws Exception ;
	public void enviarEmailFacturacion(List<String> equipos) throws Exception;
}